{\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang2058\deflangfe2058{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}\r
-{\f36\fswiss\fcharset0\fprq2{\*\panose 020b0603020202020204}Trebuchet MS{\*\falt Desyrel};}{\f115\froman\fcharset238\fprq2 Times New Roman CE;}{\f116\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f118\froman\fcharset161\fprq2 Times New Roman Greek;}\r
-{\f119\froman\fcharset162\fprq2 Times New Roman Tur;}{\f120\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f121\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f122\froman\fcharset186\fprq2 Times New Roman Baltic;}\r
-{\f123\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f475\fswiss\fcharset238\fprq2 Trebuchet MS CE{\*\falt Desyrel};}{\f476\fswiss\fcharset204\fprq2 Trebuchet MS Cyr{\*\falt Desyrel};}\r
-{\f478\fswiss\fcharset161\fprq2 Trebuchet MS Greek{\*\falt Desyrel};}{\f479\fswiss\fcharset162\fprq2 Trebuchet MS Tur{\*\falt Desyrel};}{\f482\fswiss\fcharset186\fprq2 Trebuchet MS Baltic{\*\falt Desyrel};}}{\colortbl;\red0\green0\blue0;\r
+{\f36\fswiss\fcharset0\fprq2{\*\panose 020b0603020202020204}Trebuchet MS{\*\falt Desyrel};}{\f114\froman\fcharset238\fprq2 Times New Roman CE;}{\f115\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f117\froman\fcharset161\fprq2 Times New Roman Greek;}\r
+{\f118\froman\fcharset162\fprq2 Times New Roman Tur;}{\f119\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f120\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f121\froman\fcharset186\fprq2 Times New Roman Baltic;}\r
+{\f122\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f134\fmodern\fcharset238\fprq1 Courier New CE;}{\f135\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f137\fmodern\fcharset161\fprq1 Courier New Greek;}\r
+{\f138\fmodern\fcharset162\fprq1 Courier New Tur;}{\f139\fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f140\fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f141\fmodern\fcharset186\fprq1 Courier New Baltic;}\r
+{\f142\fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f474\fswiss\fcharset238\fprq2 Trebuchet MS CE{\*\falt Desyrel};}{\f475\fswiss\fcharset204\fprq2 Trebuchet MS Cyr{\*\falt Desyrel};}\r
+{\f477\fswiss\fcharset161\fprq2 Trebuchet MS Greek{\*\falt Desyrel};}{\f478\fswiss\fcharset162\fprq2 Trebuchet MS Tur{\*\falt Desyrel};}{\f481\fswiss\fcharset186\fprq2 Trebuchet MS Baltic{\*\falt Desyrel};}}{\colortbl;\red0\green0\blue0;\r
-\rsid15430475\rsid15753411\rsid15808739\rsid15946119\rsid16085235\rsid16147095\rsid16332829\rsid16393822\rsid16399163\rsid16473238\rsid16473443\rsid16529899\rsid16542367\rsid16583651\rsid16606291\rsid16649806}{\*\generator Microsoft Word 10.0.2627;}{\info\r
-{\title Modelo conceptual de Seguridad}{\author certant}{\operator certant}{\creatim\yr2004\mo1\dy13\hr9\min57}{\revtim\yr2004\mo1\dy14\hr17\min36}{\version40}{\edmins468}{\nofpages3}{\nofwords1323}{\nofchars7281}{\*\company Certant S.A.}{\nofcharsws8587}\r
+{\*\generator Microsoft Word 10.0.2627;}{\info{\title Modelo conceptual de Seguridad}{\author certant}{\operator certant}{\creatim\yr2004\mo1\dy13\hr9\min57}{\revtim\yr2005\mo6\dy21\hr10\min35}{\version196}{\edmins-32743}{\nofpages13}{\nofwords4968}\r
@@ -41,25+104,3226 @@ n propia referente a la aplicaci\'f3n.}{\f36\fs20\insrsid15409153\charrsid434517
\par }{\b\f36\fs20\insrsid4141932\charrsid4345174 1 - }{\b\f36\fs20\insrsid4407600\charrsid4345174 ABM de usuarios en el dominio, datos propios de los usuarios}{\b\f36\fs20\insrsid722229\charrsid4345174 internos}{\b\f36\fs20\insrsid4407600\charrsid4345174 \r
\r
\par }{\f36\fs20\insrsid722229\charrsid4345174 \r
-\par Los usuarios internos son todo el personal de la Obra Social. En el momento de la incorporaci\'f3n de un empleado (cualquiera sea su cargo), el administrador del dominio deber\'e1 darlo de alta como tal bajo el contenedor correspondiente (en Casa C\r
-entral o en alguno de los CAP). Esto lo debe hacer a trav\'e9s de alguna de las herramientas administrativas que provee Samba como WEBMIN o SWAT, que son aplicaciones WEB de uso libre, o con las propias herramientas de samba por l\'ed\r
-nea de comando, como el }{\b\f36\fs20\insrsid722229\charrsid4345174 smbpasswd}{\f36\fs20\insrsid722229\charrsid4345174 .\r
+\par Los usuarios internos son todo el personal de la Obra Social. En el momento de la incorporaci\'f3n de un empleado (cualquiera sea su cargo), el administrador del dominio deber\'e1\r
+ darlo de alta como tal bajo el contenedor correspondiente (en Casa Central o en alguno de los CAP). Esto lo debe hacer a trav\'e9\r
+s de alguna de las herramientas administrativas que provee Samba como WEBMIN o SWAT, que son aplicaciones WEB de uso libre, o con las propias herramientas de samba por l\'ednea de comando, como el }{\b\f36\fs20\insrsid722229\charrsid4345174 smbpasswd}{\r
+\par donde Sede Central es el contenedor que representa la Casa Matriz de la Obra Social y CAPn es el conten}{\f36\fs20\insrsid5535349 edor que representa a cada CAP. A la altura de los contenedores deber\'e1\r
+ crearse el usuario administrador general de todo el directorio, con derechos de supervisor sobre roto el \'e1rbol (desde o=Miklolife hacia abajo en el sub\'e1rbol, heredando los permisos hacia abajo).\r
\par \r
-\par donde Sede Central es el contenedor que representa la Casa Matriz de la Obra Social y CAPn es el contenedor que representa a cada CAP. Los usuarios entrantes deber\'e1n incorporarse debajo del contenedor donde est\'e9n trabajando f\'ed\r
-sicamente, posibilitando el moviemiento a otro contenedor en caso de viaje o cambio de lugar f\'edsico de trabajo. Adicionalmente se genera un contenedor }{\b\f36\fs20\insrsid15426996\charrsid4345174 ou=Grupo_Gestion}{\r
-\f36\fs20\insrsid15426996\charrsid4345174 exclusivo para la nuestra aplicaci\'f3n, debajo del cual est\'e1ran los grupos representativos de roles dentro de la aplicaci\'f3n, tema que se tratar\'e1 en breve y con sumo detalle.}{\r
-\f36\fs20\insrsid12849087\charrsid4345174 El contenedor }{\b\f36\fs20\insrsid12849087\charrsid4345174 ou=Desafectados}{\f36\fs20\insrsid15426996\charrsid4345174 }{\f36\fs20\insrsid12849087\charrsid4345174 \r
-es para uso exclusivos de usuarios desafectados de la empresa. }{\f36\fs20\insrsid15426996\charrsid4345174 Finalmente, en el contenedor }{\b\f36\fs20\insrsid15426996\charrsid4345174 ou=}{\b\f36\fs20\insrsid12849087\charrsid4345174 E}{\r
-\b\f36\fs20\insrsid15426996\charrsid4345174 xtranet}{\f36\fs20\insrsid15426996\charrsid4345174 deber\'e1m ubicarse los afiliados, que no son usuarios internos, s\'f3lo a los efectos de autenticaci\'f3n. Este t\'f3pico tambi\'e9n ser\'e1\r
- discutido en breve.\r
+\par }{\f36\fs20\insrsid15426996\charrsid4345174 Los usuarios entrantes deber\'e1n incorporarse debajo del contenedor donde est\'e9n trabajando f\'edsicamente, posibilitando el moviemiento a otro contenedor en caso de viaje o cambio de lugar f\'ed\r
+sico de trabajo. Adicionalmente se genera un contenedor }{\b\f36\fs20\insrsid15426996\charrsid4345174 ou=Grupo_Gestion}{\f36\fs20\insrsid15426996\charrsid4345174 exclusivo para la nuestra aplicaci\'f3n, debajo del cual est\'e1\r
+ran los grupos representativos de roles dentro de la aplicaci\'f3n, tema que se tratar\'e1 en breve y con sumo detalle.}{\f36\fs20\insrsid12849087\charrsid4345174 El contenedor }{\b\f36\fs20\insrsid12849087\charrsid4345174 ou=Desafectados}{\r
+\f36\fs20\insrsid15426996\charrsid4345174 }{\f36\fs20\insrsid12849087\charrsid4345174 es para uso exclusivos de usuarios desafectados de la empresa. }{\f36\fs20\insrsid15426996\charrsid4345174 Finalmente, en el contenedor }{\r
+ ubicarse los afiliados, que no son usuarios internos, s\'f3lo a los efectos de autenticaci\'f3n. Este t\'f3pico tambi\'e9n ser\'e1 discutido en breve.\r
\par }{\f36\fs20\insrsid722229\charrsid4345174 \r
\par El administrador deber\'e1 setear un password default que el usuario deber\'e1 cambiar la primera vez que se logu\'e9\r
-e al dominio desde una de las terminales (es importante destacar que el administrador del dominio debe incorporar los trustees corresponspondientes para todas las m\'e1quinas dentro de la organizaci\'f3n).}{\f36\fs20\insrsid4345174 E\r
-ste procedimiento fue descrito en el modelo 13, conceptos de seguridad, en donde se detalla las precauciones a tomar en el intermedio en que se pise un password de usuario o se cree uno por primera vez.}{\f36\fs20\insrsid722229\charrsid4345174 \r
+e al dominio desde una de las terminales (es importante destacar que el administrador del dominio debe incorporar los trustees corresponspondientes para todas las m\'e1quinas dentro de la organizaci\'f3n).}{\f36\fs20\insrsid4345174 Este procedimiento\r
+ fue descrito en el modelo 13, conceptos de seguridad, en donde se detalla las precauciones a tomar en el intermedio en que se pise un password de usuario o se cree uno por primera vez.}{\f36\fs20\insrsid722229\charrsid4345174 \r
\par \r
\par Las pol\'edticas de password establecidas son de 6 caracteres m\'ednimo, incluyendo por lo menos un caracter num\'e9rico. Se establecer\'e1 adicionalmente una pol\'edtica de caducidad de contrase\'f1a de 60 d\'edas, impidiendo }{\r
\f36\fs20\insrsid13445777\charrsid4345174 establecer la contrase\'f1a actual como pr\'f3xima en el momento de cambio.}{\f36\fs20\insrsid722229\charrsid4345174 \r
@@ -89,6+3353,7 @@ a LDAP y se mueve el mismo al contenedor }{\b\f36\fs20\insrsid12849087\charrsid4
\par }{\f36\fs20\insrsid3935565\charrsid3935565 A su ve}{\f36\fs20\insrsid3935565 z, y como se ve en la figura esquem\'e1tica del directorio, habr\'e1 un contenedor externos. Dentro del mismo se alojar\'e1n los usuarios que no son empleados de la corporaci\'f3\r
n, es decir aquellos que realicen tareas desde los prestadores y los pacientes mismos.}{\f36\fs20\insrsid2899807 El Distinguished Name del contenedor ser\'e1 }{\b\f36\fs20\insrsid2899807 ou=Externos,o=Miklolife}{\f36\fs20\insrsid2899807 y tendr\'e1\r
los siguientes permisos (todos heredados al sub\'e1rbol):}{\f36\fs20\insrsid3935565 \r
+\par }{\f36\fs20\insrsid4027509 \r
\par }{\b\f36\fs20\insrsid2899807 B\'fasqueda\r
\par Comparaci\'f3n de atributos\r
\par Lectura de objetos y sus atributos\r
@@ -114,124+3379,5111 @@ n, es decir aquellos que realicen tareas desde los prestadores y los pacientes m
\par A continuaci\'f3n se detallan los }{\f36\fs20\insrsid3549731\charrsid4345174 atributos que tendr\'e1n las entries de cada clase, exceptuando a los usuarios que se tratar\'e1n luego con m\'e1s detalle:}{\f36\fs20\insrsid15164345\charrsid4345174 \r
-\par }{\b\f36\fs20\insrsid3549731\charrsid4345174 Organizaci\'f3n:}{\f36\fs20\insrsid3549731\charrsid4345174 es la ra\'edz del sub\'e1rbol que representa la corporaci\'f3n, ser\'e1n instancias de la clase }{\b\f36\fs20\insrsid3549731\charrsid4345174 \r
+\b\f36\fs20\insrsid3549731\charrsid4345174 Organizaci\'f3n:}{\f36\fs20\insrsid3549731\charrsid4345174 es la ra\'edz del sub\'e1rbol que representa la corporaci\'f3n, ser\'e1n instancias de la clase }{\b\f36\fs20\insrsid3549731\charrsid4345174 \r
organization}{\f36\fs20\insrsid3549731\charrsid4345174 . Solamente contendr\'e1 su DN, el atributo O con el RDN del objeto, y una descripci\'f3n}{\f36\fs20\insrsid151329\charrsid4345174 , en la misma se presentar\'e1 la raz\'f3n social de la empresa}{\r
\f36\fs20\insrsid3549731\charrsid4345174 .\r
+\par }{\f36\fs20\insrsid3549731 \r
+\par }{\f36\fs20\insrsid1002065 \r
\par \r
-\par }{\b\f36\fs20\insrsid3549731\charrsid4345174 Contenedores:}{\f36\fs20\insrsid3549731\charrsid4345174 ser\'e1n de la clase }{\b\f36\fs20\insrsid3549731\charrsid4345174 organizationalUnit}{\f36\fs20\insrsid3549731\charrsid4345174 . Dividen jer\'e1\r
+\b\f36\fs20\insrsid3549731\charrsid4345174 Contenedores:}{\f36\fs20\insrsid3549731\charrsid4345174 ser\'e1n de la clase }{\b\f36\fs20\insrsid3549731\charrsid4345174 organizationalUnit}{\f36\fs20\insrsid3549731\charrsid4345174 . Dividen jer\'e1\r
rquicamente al \'e1rbol para no hacerlo plano si no corporativo, conteniendo a los distintos usuarios y }{\f36\fs20\insrsid151329\charrsid4345174 grupos de manera separada seg\'fan ubicaciones f\'edsicas y roles. Ser\'e1\r
n cargados su DN, el atributo ou que forma su RDN y como descripci\'f3n deber\'e1n contener el motivo por el cual se realiz\'f3 dicha subdivisi\'f3n l\'f3gica.}{\f36\fs20\insrsid3549731\charrsid4345174 \r
-\par }{\b\f36\fs20\insrsid151329\charrsid4345174 Grupos:}{\f36\fs20\insrsid151329\charrsid4345174 ser\'e1n de la clase }{\b\f36\fs20\insrsid151329\charrsid4345174 groupOfUniqueNames}{\f36\fs20\insrsid151329\charrsid4345174 definida en X.500, y a\r
-dicionalmente tendr\'e1n la clase auxiliar }{\b\f36\fs20\insrsid151329\charrsid4345174 posixGroup}{\f36\fs20\insrsid151329\charrsid4345174 para el tratamiento Samba, en el cual no ahondaremos. Estos objetos tendr\'e1\r
-n cargado su DN, el CN como RDN del mismo, y los atributos optativos description, donde estar\'e1 el papel que juega el grupo en la corporaci\'f3n o a nivel de aplicaci\'f3n, y }{\b\f36\fs20\insrsid151329\charrsid4345174 uniqueMember}{\r
+\par }{\b\f36\fs20\insrsid151329\charrsid4345174 Grupos:}{\f36\fs20\insrsid151329\charrsid4345174 ser\'e1n de la clase }{\b\f36\fs20\insrsid151329\charrsid4345174 groupOfUniqueNames}{\f36\fs20\insrsid151329\charrsid4345174 \r
+ definida en X.500, y adicionalmente tendr\'e1n la clase auxiliar }{\b\f36\fs20\insrsid151329\charrsid4345174 posixGroup}{\f36\fs20\insrsid151329\charrsid4345174 para el tratamiento Samba, en el cual no ahondaremos. Estos objetos tendr\'e1n cargad\r
+o su DN, el CN como RDN del mismo, y los atributos optativos description, donde estar\'e1 el papel que juega el grupo en la corporaci\'f3n o a nivel de aplicaci\'f3n, y }{\b\f36\fs20\insrsid151329\charrsid4345174 uniqueMember}{\r
\f36\fs20\insrsid151329\charrsid4345174 , que contendra el DN de los usuarios que pertenezcan a este grupo.}{\f36\fs20\insrsid10311064\charrsid4345174 Los atributos cargados por Samba no ser\'e1n descriptos en este documento, y est\'e1\r
}{\fldrslt {\cs15\f36\fs20\ul\cf2\insrsid10311064\charrsid4345174 www.samba.org}}}{\f36\fs20\insrsid10311064\charrsid4345174 , lo mismo para los usuarios.}{\f36\fs20\insrsid151329 \r
-\par Este tipo de objeto ser\'e1 tratado especialmente y se mostrar\'e1n los datos necesarios para los usuarios empleados de la organizaci\'f3n.}{\f36\fs20\insrsid3042866 A continuaci\'f3n se muestra una tabla con los atributos de la clase }{\r
-\b\f36\fs20\insrsid3042866 inetOrgPerson}{\f36\fs20\insrsid3042866 que ser\'e1n utilizados (no ser\'e1n utilizados todos), y un }{\f36\fs20\insrsid16529899 mapeo al mundo }{\f36\fs20\cf1\insrsid16529899\charrsid16529899 humano}{\f36\fs20\insrsid16529899 \r
- de que representa cada atributo. Los atributos est\'e1n definidos en esta clase y en las clases de la que hereda (}{\b\f36\fs20\insrsid16529899 organizationalPerson, Top}{\f36\fs20\insrsid16529899\charrsid16529899 ) }{\f36\fs20\insrsid16529899 seg\'fa\r
-n la RFC 2798}{\f36\fs20\insrsid16529899\charrsid16529899 :}{\f36\fs20\ul\insrsid5138116 \r
+11111111111111111111110101011111111111111111111111111111111111111111111111111101010111111111111111111111111111111111111111111111111111000001040000002701ffff030000000000}\par}}}{\f36\fs20\insrsid5138116 Este tipo de objeto ser\'e1\r
+ tratado especialmente y se mostrar\'e1n los datos necesarios para los usuarios empleados de la organizaci\'f3n.}{\f36\fs20\insrsid3042866 A continuaci\'f3n se muestra una tabla con los atributos de la clase }{\b\f36\fs20\insrsid3042866 inetOrgPerson}{\r
+\f36\fs20\insrsid3042866 que ser\'e1n utilizados (no ser\'e1n utilizados todos), y un }{\f36\fs20\insrsid16529899 mapeo al mundo }{\f36\fs20\cf1\insrsid16529899\charrsid16529899 humano}{\f36\fs20\insrsid16529899 \r
+ de que representa cada atributo. Los atributos est\'e1n definidos en esta clase y en las clases de la que hereda (}{\b\f36\fs20\insrsid16529899 organizationalPerson, }{\b\f36\fs20\insrsid10432972 person, }{\b\f36\fs20\insrsid16529899 Top}{\r
+\f36\fs20\insrsid16529899\charrsid16529899 ) }{\f36\fs20\insrsid16529899 seg\'fan la RFC 2798}{\f36\fs20\insrsid16529899\charrsid16529899 :}{\f36\fs20\ul\insrsid5138116 \r
-\qc \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid16529899 {\b\f36\fs20\cf8\insrsid16529899 Nombre del atributo}{\b\f36\fs20\cf8\insrsid16529899\charrsid16529899 \cell Nombre descriptivo\cell }\pard \r
+\qc \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid16529899\yts19 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\b\f36\fs20\cf8\insrsid16529899 Nombre del atributo}{\r
+\b\f36\fs20\cf8\insrsid16529899\charrsid16529899 \cell Nombre descriptivo\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\fs20\ul\insrsid16529899 \r
+\f36\fs20\insrsid16529899 Numero de CAP / Sede Central}{\f36\fs20\insrsid16529899\charrsid16529899 \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\r
-\cell }{\f36\fs20\insrsid16529899 Numero de CAP / Sede Central}{\f36\fs20\insrsid16529899\charrsid16529899 \cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\fs20\ul\insrsid16529899 \trowd \irow3\irowband3\r
+\b\f36\fs20\insrsid13438039 photo\cell }{\f36\fs20\insrsid13438039 URI a la foto del empleado\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\r
+Password del usuario, encriptado seg\'fan el directorio elegido (este atributo no se puede leer como parte del esquema, s\'f3lo admite un compare, esto es a nivel est\'e1ndar X.500)\cell }\pard\plain \r
-\row }\pard \qc \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid16529899 {\b\f36\fs20\insrsid13438039 photo\cell }{\f36\fs20\insrsid13438039 URI a la foto del empleado\cell }\pard\r
+\qc \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid10432972\yts19 {\f36\fs20\insrsid10432972 Zona de trabajo\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\r
-n el directorio elegido (este atributo no se puede leer como parte del esquema, s\'f3lo admite un compare, esto es a nivel est\'e1ndar X.500)\cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\fs20\ul\insrsid13438039 \r
\par }{\f36\fs20\insrsid15946119 A continuaci\'f3n se presenta la misma tabla con los atributos necesarios (y \'fanicos) para los usuarios externos como prestadores y afiliados:}{\f36\fs20\insrsid216146\charrsid15946119 \r
-\clcbpat1\cltxlrtb\clftsWidth3\clwWidth4489\clcbpatraw1 \cellx8870\pard \qc \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid6904291 {\b\f36\fs20\cf8\insrsid8015672 Nombre del atributo}{\r
-\b\f36\fs20\cf8\insrsid8015672\charrsid16529899 \cell Nombre descriptivo\cell }\pard \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\b\f36\fs20\cf8\insrsid8015672\charrsid16529899 \trowd \irow0\irowband0\r
-del usuario, encriptado seg\'fan el directorio elegido (este atributo no se puede leer como parte del esquema, s\'f3lo admite un compare, esto es a nivel est\'e1ndar X.500)\cell }\pard \r
+\pard\plain \qc \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid6904291\yts19 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\b\f36\fs20\cf8\insrsid8015672 Nombre del atributo}{\r
+\b\f36\fs20\cf8\insrsid8015672\charrsid16529899 \cell Nombre descriptivo\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\r
+Password del usuario, encriptado seg\'fan el directorio elegido (este atributo no se puede leer como parte del esquema, s\'f3lo admite un compare, esto es a nivel est\'e1ndar X.500)\cell }\pard\plain \r
+\par }{\b\f36\fs20\insrsid8660967 4 \endash Programas a utilizar}{\b\f36\fs20\insrsid12990600 \r
+\par }{\f36\fs20\insrsid8660967 \r
+\par Ya hemos establecido que el dominio ser\'e1 windows pero administrado desde un SAMBA, aplicaci\'f3n de uso gratuito disponible en internet. Para soporte de \'e9sta aplicaci\'f3n distribu\'edda, se utilizar\'e1 un sistema operativo Novell Suse Enterprise 9\r
+}{\f36\fs20\insrsid9454319 (no Netware) que correr\'e1 bajo las especificaciones planteadas en el modelo 13, conteptos de seguridad.}{\f36\fs20\insrsid13376273 El mismo sistema operativo ser\'e1\r
+ utilizado para soportar al directorio. Para la base del directorio hay una amplia gama de opciones, como por ejemplo:}{\f36\fs20\insrsid8660967 \r
+\par AD y OID de Microsoft y Oracle respectivamente los descartamos de inmediato por sus bajas prestaciones y dif\'edcil administraci\'f3n. La elecci\'f3n se inclina hacia Novell eDirectory, producto de muchos a\'f1os de antig\'fc\r
+edad y totalmente robusto. El mismo utiliza MD5 para proteger internamente sus datos haci\'e9ndolo dif\'edcil de vulnerar. OpenLDAP se descart\'f3 a pesar de ser una opci\'f3n OpenSource, ya que es p\'e9\r
+simo a nivel de directorio, si bien cumple con todos los est\'e1ndares, posee muchas limitaciones y caracter\'edsticas que el mismo grupo OpenLDAP piensa no desarrollar en el futuro.\r
+\par }{\f36\fs20\insrsid8091998 \r
+\par Para las estaciones de trabajo, se instalar\'e1 un windows 2000 professional, y la aplicaci\'f3n de gesti\'f3n. Se limitar\'e1 }{\f36\fs20\insrsid14295502 la manejabilidad del sistema operativo por parte del usuario comun, y se activar\'e1\r
+ un protector de pantalla con contrase\'f1a a los 5 minutos de desuso, de modo tal que la estaci\'f3n permanezca lockeada en caso de que el usuario deje su puesto de trabajo moment\'e1neamente.}{\f36\fs20\insrsid8091998 \r
+\par }{\f36\fs20\insrsid8002554 \r
+\par En cuanto al motor de base de datos a utilizar existen varias alternativas tambi\'e9n:\r
+\par La inclinaci\'f3n surge hacia PostreSQL debido al alto contenido de prestaciones y caracter\'edsticas embebidas y a que es de uso gratuito, compitiendo con Oracle, cuyo motor es muy potent}{\f36\fs20\insrsid8598060 \r
+en y sus prestaciones son altas, como tamb\'eden la de SQL Server. MySQL todav\'eda est\'e1 carente de ciertas caracter\'edsticas que facilitan el desarrollo, ras\'f3n por la cual queda en \'faltimo lugar entre los motores posibles.}{\r
+\f36\fs20\insrsid8002554 \r
+\par }{\f36\fs20\insrsid12601929 \r
+\par }{\b\f36\fs20\insrsid12601929 5 }{\b\f36\fs20\insrsid11030114 \endash }{\b\f36\fs20\insrsid12601929 }{\b\f36\fs20\insrsid11030114 Base de Datos Relacional, }{\b\f36\fs20\insrsid10556177 dise\'f1o y }{\b\f36\fs20\insrsid11030114 caracter\'edsticas\r
+\par \r
+\par }{\f36\fs20\insrsid13967337 Como se explic\'f3 en el modelo 13, conceptos de seguridad, para manejarla a nivel aplicaci\'f3n se combina la potencia del directorio con tablas param\'e9tricas de la base de datos propia de la aplicaci\'f3n. A nivel esquem\r
+\'e1tico, se mostrar\'e1 nuevamente la figura del modelo anterior:}{\f36\fs20\insrsid11030114 \r
+\par }\pard \qj \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8468892 {\f36\fs20\insrsid10701697 Los grupos del directorio (clase }{\b\f36\fs20\insrsid10701697 groupOfUniqueNames}{\f36\fs20\insrsid10701697 ) ser\'e1\r
+n quienes llevar\'e1n la tarea de mantener el perfil del usuario. Un usuario puede pertenecer a todos los grupos que desee, de manera que se pueden combinar haciendo perfiles m\'e1s complejos. }{\f36\fs20\insrsid13969815 \r
+Para ver los perfiles por defecto que deber\'e1n estar inicialmente, ver la secci\'f3n 6.}{\f36\fs20\insrsid8468892 \r
+\par }{\f36\fs20\insrsid10701697 \r
+\par Recaer\'e1 luego en la base de datos relacional el parametrizar cada grupo contra una funcionalidad propia de la aplicaci\'f3n.}{\f36\fs20\insrsid2303000 A continuaci\'f3n se detalla el DER de esta porci\'f3n de la base de datos de la aplicaci\'f3\r
+n, completamente aislada e independiente del resto de las tablas y relaciones:}{\f36\fs20\insrsid10701697 \r
+}{\f36\fs20\cf1\insrsid2705535 Su objetivo es mapear un grupo del directorio contra una funcionalidad propia de la aplicaci\'f3n.}{\f36\fs20\cf1\insrsid2705535\charrsid2705535 \cell }\pard\plain \r
+\qj \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid3082843\yts19 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\f36\fs20\insrsid2705535 Funcionalidad\cell Tabla param\'e9\r
+trica que contiene todas las funcionalidades posibles dentro de la aplicaci\'f3n.\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\r
+\qj \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid3082843\yts19 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\f36\fs20\insrsid2705535 Funcionalidad_Menu\cell Desglosa cada funcionalidad en subactividades, y ser\r
+\'e1n las que utiliza la aplicaci\'f3n para mostrar en pantalla.\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\f36\fs20\insrsid2705535 \r
+\par }{\b\f36\fs20\insrsid7230403\charrsid7230403 Diccion}{\b\f36\fs20\insrsid7230403 ario de composici\'f3n}{\b\f36\fs20\insrsid3693762 de los campos}{\b\f36\fs20\insrsid7230403 \r
+\par }{\b\f36\fs20\insrsid9709654 Especificaci\'f3n}{\b\f36\fs20\insrsid8146442 descriptiva}{\b\f36\fs20\insrsid9709654 de los atributos}{\f36\fs20\insrsid9709654 \r
+\par }{\f36\fs20\insrsid12926129 En primer lugar, tenemos la tabla }{\b\f36\fs20\insrsid12926129 Perfil_Funcionalidad}{\f36\fs20\insrsid12926129 . Dentro de \'e9sta tabla tenemos un }{\b\f36\fs20\insrsid12926129\charrsid12926129 id}{\f36\fs20\insrsid12926129 \r
+ interno a la tabla de modo de poder identificar como \'fanico a cada registro. Luego tenemos }{\b\f36\fs20\insrsid12926129 nombre_grupo}{\f36\fs20\insrsid12926129 , que es }{\f36\fs20\insrsid14568302 el nombre textual}{\f36\fs20\insrsid9709654 \r
+ de uno de los grupos mantenidos en el contenedor de grupos del directorio}{\f36\fs20\insrsid3880643 (debe coincidir con el atributo CN del mismo)}{\f36\fs20\insrsid9709654 .}{\f36\fs20\insrsid13048222 Finalmente, tenemos }{\b\f36\fs20\insrsid13048222 \r
+fid_funcionalidad}{\f36\fs20\insrsid13048222 que es la clave for\'e1nea hacia una funcionalidad, dentro de la entidad }{\b\f36\fs20\insrsid13048222 Funcionalidad}{\f36\fs20\insrsid13048222 que ser\'e1 descrita en el pr\'f3ximo paso.}{\r
+\f36\fs20\insrsid9840535 \r
+\par }{\f36\fs20\insrsid9459024 \r
+\par En la tabla }{\b\f36\fs20\insrsid9459024 Funcionalidad}{\f36\fs20\insrsid9459024 , tenemos un }{\b\f36\fs20\insrsid9459024 id}{\f36\fs20\insrsid9459024 identificador \'fanico de cada registro y clave primaria de la tabla. Luego vemos el campo }{\r
+\b\f36\fs20\insrsid9459024 nombre_funcionalidad}{\f36\fs20\insrsid9459024 , que deber\'e1 ser un nombre corto distinsor de una de las funcionalidades de la aplicaci\'f3n. Finalmente, el atributo }{\b\f36\fs20\insrsid9459024 descripci\'f3n}{\r
+\f36\fs20\insrsid3240602 , que explayar\'e1 brevemente el uso de tal funcionalidad. Esta es una tabla netamente param\'e9trica.}{\f36\fs20\insrsid9459024 \r
+\par }{\f36\fs20\insrsid8484030 \r
+\par Por \'faltimo, contamos con la tabla }{\b\f36\fs20\insrsid8484030\charrsid8484030 Funcionalidad_Menu}{\f36\fs20\insrsid8484030 , cuya funci\'f3n es el desglose de cada funcionalidad en diferentes subactividades. Cada una de \'e9stas ser\'e1 un \'ed\r
+tem de men\'fa, tal como se explic\'f3 en el modelo 12, dise\'f1o conceptual de men\'fa. Como siempre, el campo }{\b\f36\fs20\insrsid8484030 id }{\f36\fs20\insrsid8484030 identifica l\'f3gicamente a cada registro. }{\f36\fs20\insrsid2897863 Luego, }{\r
+\b\f36\fs20\insrsid2897863 fid_funcionalidad}{\f36\fs20\insrsid2897863 ser\'e1 un for\'e1neo hacia una funcionalidad de la tabla del p\'e1rrafo anterior.}{\f36\fs20\insrsid20704 Luego vemos a }{\b\f36\fs20\insrsid20704 nombre_menu}{\r
+\f36\fs20\insrsid20704 que es un descriptivo corto de la actividad que proporcionar\'e1 el item en cuesti\'f3n y es lo que se mostrar\'e1 en pantalla, y }{\b\f36\fs20\insrsid20704 descripcion_menu }{\f36\fs20\insrsid20704 es una breve descripci\'f3\r
+n hacerca de que realiza esta subactividad desprendida de cierta funcionalidad.}{\f36\fs20\insrsid8484030 \r
+\par }{\f36\fs20\insrsid11677346 \r
+\par }{\b\f36\fs20\insrsid6967832 R}{\b\f36\fs20\insrsid6447039 eglas de Integridad Referencial}{\b\f36\fs20\insrsid6967832 \r
+\par \r
+\par Tabla Funcionalidad:\r
+\par \r
+\par }{\f36\fs20\insrsid6967832 Al borrarse un registro de esta tabla, deben borrarse en cascada aquellos que le hac\'edan referencia desde las tablas }{\b\f36\fs20\insrsid6967832 Perfil_Funcionalidad }{\f36\fs20\insrsid6967832 y }{\b\f36\fs20\insrsid6967832 \r
+Funcionalidad_Menu}{\f36\fs20\insrsid6967832 . Esta operaci\'f3n es muy cr\'edtica, ya que se est\'e1 sacando una funcionalidad completa a la aplicaci\'f3n.\r
+\par \r
+\par Cuando se da de alta, no es necesario en principio que Se generen registros en las otras dos tablas. Si no contiene registros referenciados en }{\b\f36\fs20\insrsid6967832 Funcionalidad_Menu}{\f36\fs20\insrsid6967832 \r
+, simplemente se toma como que dicha funcionalidad no posee subactividades.\r
+\par }\pard \qj \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8468892 {\b\f36\fs20\insrsid6967832 Tabla Perfil_Funcionalidad:}{\b\f36\fs20\insrsid6890163 \r
+\par }{\f36\fs20\insrsid6967832 \r
+\par }{\f36\fs20\insrsid9185197 Tanto al crear o borrar un registro, el mismo no tiene impacto en el resto de las tablas. Simplemente se le est\'e1 agregando o sacando respectivamente, una funcionalidad al rol elegido.}{\f36\fs20\insrsid6967832 \r
+\par }{\f36\fs20\insrsid9185197 \r
+\par }{\b\f36\fs20\insrsid9185197 Tabla Funcionalidad_Menu:}{\f36\fs20\insrsid9185197 \r
+\par \r
+\par En este caso la creaci\'f3n y el borrado son irrestrictos como en el caso anterior. Crear o borrar un registro implica agregar o eliminar una subactividad a una funcionalidad.}{\f36\fs20\insrsid9185197\charrsid9185197 \r
+\par }{\b\f36\fs20\insrsid6890163 6 \endash Perfiles }{\b\f36\fs20\insrsid13504653 y funcionalidades }{\b\f36\fs20\insrsid6890163 por defecto\r
+\par }{\f36\fs20\insrsid545908 \r
+\par En el momento inicial la aplicaci\'f3n contar\'e1 con ciertos perfiles ya creados por defecto. Los mismos}{\f36\fs20\insrsid9399611 estar\'e1n contenidos dentro del contenedor }{\b\f36\fs20\insrsid9399611 ou=Grupo_Gestion,o=Miklolife}{\r
+\f36\fs20\insrsid9399611 y }{\f36\fs20\insrsid545908 ser\'e1n}{\f36\fs20\insrsid4271030 los siguientes grupos}{\f36\fs20\insrsid545908 :\r
+\cell }{\f36\fs20\insrsid11666120 Representa a todos los usuarios que tienen acceso a la aplicaci\'f3n. }{\f36\fs20\insrsid11038731 Solamente los usuarios que se encuentren dentro de este grupo podr\'e1n intentar autenticarse contra la aplicaci\'f3\r
+n, de lo contrario serp\'e1n rechazados autom\'e1ticamente.}{\f36\fs20\insrsid11666120 \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\r
+\f36\fs20\insrsid11038731 Representa a los usuarios cuyo rol es Administrativo (ver el actor Administrador en el caso de usos).}{\f36\fs20\insrsid11666120 \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \r
+\b\f36\fs20\insrsid11666120\charrsid11666120 \cell }{\f36\fs20\insrsid11038731 Representa a }{\f36\fs20\insrsid6553639 los usuarios que son empleados de las }{\f36\fs20\insrsid11038731 prestador}{\f36\fs20\insrsid6553639 as}{\f36\fs20\insrsid11038731 , }\r
+{\f36\fs20\insrsid6553639 los mismos estar\'e1n}{\f36\fs20\insrsid11038731 en el contenedor }{\b\f36\fs20\insrsid11038731 ou=Extranet,o=Miklolife}{\f36\fs20\insrsid11038731 y tendr\'e1}{\f36\fs20\insrsid6553639 n}{\f36\fs20\insrsid11038731 tod\r
+as aquellas funcionalidades}{\f36\fs20\insrsid6553639 habilitadas para usuarios empleados de las distintas prestadoras de la Obra Social.}{\f36\fs20\insrsid11666120\charrsid11038731 \cell }\pard\plain \r
+\f36\fs20\insrsid6553639 Representa a los }{\f36\fs20\insrsid265749 usuraos afiliados a la obra social, que accederan por medio de la extranet para realizar tareas sobre sus cuentas y a nivel general acerca de su Plan.}{\f36\fs20\insrsid11152602 \r
+ Estos usuarios estar\'e1n contenidos dentro de }{\b\f36\fs20\insrsid11152602 ou=Extranet,o=Miklolife}{\f36\fs20\insrsid11152602 .}{\f36\fs20\insrsid11666120\charrsid11152602 \cell }\pard\plain \r
+\qj \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0\pararsid8468892\yts19 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\b\f36\fs20\insrsid1180580 Cn=Operadores\cell }{\f36\fs20\insrsid1180580 Representa a todos lo\r
+s usuarios cuyo rol es Operador (ver el actor del mismo nombre en el caso de uso).\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang2058\langfe2058\cgrid\langnp2058\langfenp2058 {\r
+\par }{\f36\fs20\insrsid5385367 As\'ed mismo, y relacionadas con los grupos anteriores, se deber\'e1n presentar las siguientes funcionalidades por default:}{\f36\fs20\insrsid545908 \r
+\par }{\b\f36\fs20\insrsid1579352\charrsid1579352 7 }{\b\f36\fs20\insrsid1579352 \endash }{\b\f36\fs20\insrsid1579352\charrsid1579352 }{\b\f36\fs20\insrsid1579352 Operatoria diaria \endash Integraci\'f3n del directorio y la base de datos}{\r
+\b\f36\fs20\insrsid1731785 \r
+\par }{\b\f36\fs20\insrsid16336390 \r
+\par }{\f36\fs20\insrsid16336390 En esta secci\'f3n se mostrar\'e1n las actividades relacionadas a seguridad por parte de la aplicaci\'f3n y se delinear\'e1 con detalle c\'f3mo se debe proceder para implementar tales actividades.\r
+\par \r
+\par }{\b\f36\fs20\insrsid294813 7.1 \endash Login en el Dominio}{\b\f36\fs20\insrsid16336390 \r
+\par }{\b\f36\fs20\insrsid294813 \r
+\par }{\f36\fs20\insrsid294813 Este t\'f3pico no hace a la aplicaci\'f3n y se describir\'e1 brevemente el sistema de login de un dominio windows, aunque no se graficar\'e1 ni entrar\'e1 en detalles con respecto al mismo.\r
+\par \r
+\par El usuario introduce su usuario y password as\'ed como tambi\'e9n especifica el dominio al que se quiere loguear. En ese momento, la m\'e1quina env\'eda al PDC una petici\'f3n de login, junto con el modo de encriptaci\'f3\r
+n utilizado (NT o LanManager, ver el glosario del modelo 13). El PDC contesta (si la m\'e1quina est\'e1 registrada) con un string de 8 bytes random, llamado challenge. El mismo llega a la m\'e1quina. All\'ed\r
+ se encripta NT o LanManager el password introducido por el usuario, y }{\f36\fs20\insrsid14686571 con \'e9l encripta el challenge y se env\'eda el resultado al PDC. Del otro lado, el PDC hace lo mismo con el password que ten\'ed\r
+a almacenado para el usuario (lo busca del objeto usuario del directorio) y finalmente }{\f36\fs20\insrsid1713792 compara estos dos strings, autenticando la veracidad del usuario si el resultado de la comparaci\'f3n es positivo, o deneg\'e1\r
+ndo su acceso al dominio si es negativo.}{\f36\fs20\insrsid294813 \r
+\par }{\f36\fs20\insrsid13905533 \r
+\par }{\b\f36\fs20\insrsid13905533\charrsid6834870 7.2 \endash Login a la aplicaci}{\b\f36\fs20\insrsid6834870\charrsid6834870 \'f3n}{\f36\fs20\insrsid13905533 \r
+\par }{\f36\fs20\insrsid6834870 \r
+\par Este proceso se relatar\'e1 en detalle ya que se considera crucial en cuanto al tema de seguridad. Una vez adentro de la aplicaci\'f3n, el usuario podr\'e1 hacer todo lo que su rol le permita con lo cual una vulneraci\'f3n }{\f36\fs20\insrsid1261937 \r
+en esta parte pu}{\f36\fs20\insrsid16611804 ede llegar a romper el negocio.}{\f36\fs20\insrsid6834870 \r
+\par }{\f36\fs20\insrsid3552831 \r
+\par La pantallad de login es simple y consta de dos cajas de texto, una para ingresar un username y luego un password, \'e9ste \'faltimo mostrando como echo caracteres asterisco.\r
+\par }{\f36\fs20\insrsid1261937 \r
+\par La autenticaci\'f3n constar\'e1 de los siguientes pasos:\r
+El usuario ingresa su username y su password.}{\f36\fs20\insrsid9898983 El usuario }{\b\f36\fs20\insrsid9898983 uid=admin_gestion,ou=Sede_Central,o=Miklolife}{\f36\fs20\insrsid9898983 en el cual se impersonifica la aplicaci\'f3n, realiza una conexi\'f3\r
+n contra el server LDAP, y un bind con sus credenciales propias, hardcodeadas en la aplicaci\'f3n (bind es el t\'e9rmino por el cual se toma las riendas de las operaciones del directorio bajo cierto usuario, sete\'e1ndose autom\'e1\r
+ticamente los permisos correspondientes).}{\f36\fs20\insrsid7041709 El siguiente paso es hacer un searh LDAP, a partir de }{\b\f36\fs20\insrsid7041709 o=Miklolife}{\f36\fs20\insrsid7041709 , con scope subtree (ver la RFC 2254 para los detalles de la b\r
+\'fasqueda y los filtros LDAP). Se usar\'e1 el siguiente filtro }{\b\f36\fs20\insrsid7041709\charrsid11428129 (&(objectclass=inetOrgPerson)(uid=XXXXX))}{\f36\fs20\insrsid7041709 . Este filtro, para el p\'fablico sql, es un an\'e1logo a la porci\'f3\r
+n where en un select sql.}{\f36\fs20\insrsid11428129 El mismo est\'e1 en notaci\'f3n prefija, y }{\f36\fs20\insrsid14817288 lo que queremos precisar ac\'e1 es que el server devuelva aquellos objetos (deber\'eda ser uno s\'f3lo o ninguno) con clase }{\r
+\b\f36\fs20\insrsid14817288 inetOrgPerson}{\f36\fs20\insrsid14817288 (es un usuario) y cuyo }{\b\f36\fs20\insrsid14817288 uid}{\f36\fs20\insrsid14817288 es }{\b\f36\fs20\insrsid14817288 XXXXX}{\f36\fs20\insrsid14817288 (donde esto \'fa\r
+ltimo es el username introducido por el usuario).}{\f36\fs20\insrsid13174396 Si el mismo }{\f36\fs20\insrsid15009656 no existe en el directorio (c\'f3digo LDAP 32 \endash No Such Entry), la autenticaci\'f3n falla y se deniega el acceso al usuario.}{\r
+\f36\fs20\insrsid746267 Si el usuario existe, se pasa al punto 2 (c\'f3digo LDAP 0, success). Si hubiere m\'e1s de un resultado, se deniega el acceso, pero este es un error administrativo, ya que no deber\'edan haber dos usuarios iguales ya que esto est\r
+\'e1 restringido por el dominio.}{\f36\fs20\insrsid1261937 \r
+\par {\listtext\pard\plain\f36\fs20\insrsid746267 \hich\af36\dbch\af0\loch\f36 2.\tab}}{\f36\fs20\insrsid746267 En este punto obtenemos el DN del usuario resultante de la b\'fa\r
+squeda del punto 1. Ahora, se realiza un bind LDAP con este mismo usuario (con su DN y su password), esta acci\'f3n se traduce como un rebind. Si la misma falla (c\'f3\r
+digo LDAP 49, Invalid Credentials), el password ingresado por el usuario es incorrecto y se deniega el acceso. Si el c\'f3digo es 0 \endash Success el usuario est\'e1 }{\f36\fs20\insrsid2633967 casi }{\f36\fs20\insrsid746267 adentro de la aplicaci\'f3n}{\r
+\f36\fs20\insrsid2633967 y se pasa al punto 3}{\f36\fs20\insrsid746267 .\r
+\par {\listtext\pard\plain\f36\fs20\insrsid2633967 \hich\af36\dbch\af0\loch\f36 3.\tab}}{\f36\fs20\insrsid2633967 El siguiente paso es buscar si el usuario est\'e1 en el grupo }{\b\f36\fs20\insrsid2633967 cn=autenticados,ou=Grupo_Gestion,o=Miklolife}{\r
+\f36\fs20\insrsid2633967 .}{\f36\fs20\insrsid3868438 Si no se encuentra dentro del mismo (atributo }{\b\f36\fs20\insrsid3868438 uniqueMember}{\f36\fs20\insrsid3868438 ) se deniega el acceso al mismo (el usuario es parte del dominio pero no de la aplicaci\r
+\'f3n). Si el DN del usuario se encuentra entre los miembros del grupo, entonces el usuario pertenece a la aplicaci\'f3n}{\f36\fs20\insrsid13375992 y est\'e1 adentro de la misma}{\f36\fs20\insrsid3868438 .}{\f36\fs20\insrsid746267 \r
+\par }{\f36\fs20\insrsid13375992 Es importante destacar que en cada punto se posibilita una denegaci\'f3n de ingreso al usuario por alguna causa. Bajo ning\'fan concepto hay que darle al usuario informaci\'f3n del por qu\'e9 de la falla de la autenticaci\'f3\r
+n ya que estas son pistas que pueden ayudar a piratas inform\'e1ticos}{\f36\fs20\insrsid14437068 . }{\f36\fs20\insrsid1906447 Ante cualquier error, se devolver\'e1 el mensaje \'93Su usuario o password son incorrectos\'94. Es el \'fani\r
+co mensaje que se arrojar\'e1 ante un login err\'f3neo.}{\f36\fs20\insrsid13375992 \r
+\par }{\f36\fs20\insrsid1906447 \r
+\par El paso siguiente es realizar la autorizaci\'f3n del usuario. Para ello, se buscan aquellos grupos en cuyo atributo }{\b\f36\fs20\insrsid1906447 uniqueMember}{\f36\fs20\insrsid1906447 figure el DN del usuario logueado. }{\f36\fs20\insrsid13389428 \r
+Luego, con la lista de estos grupos, se entra en la base de datos en la tabla }{\b\f36\fs20\insrsid13389428 Perfil_Funcionalidad}{\f36\fs20\insrsid13389428 , y se buscan todas las entradas de la tabla que tengan los grupos resultantes de esta \'faltima b\r
+\'fasqueda. Una vez detectadas estos registros, se tendr\'e1n las funcionalidades asociadas al rol del usuario dentro de la tabla }{\b\f36\fs20\insrsid13389428 Funcionalidad}{\f36\fs20\insrsid13389428 y junto con ellas, los \'edtems de men\'fa\r
+ cuando correspondan, si es que hay asociados registros en la tabla }{\b\f36\fs20\insrsid13389428 Funcionalidad_Menu}{\f36\fs20\insrsid13389428 .}{\f36\fs20\insrsid1906447 \r
+\par }{\b\f36\fs20\insrsid16661662 \r
+\par }{\f36\fs20\insrsid16661662 El siguiente esquema representa el usuario en la autenticaci\'f3n y b\'fasqueda de perfiles para mantener una mejor idea conceptual de lo que se pretende lograr.\r
+\par }{\b\f36\fs20\insrsid7537636 7.3 \endash ABM de usuarios internos\r
+\par }{\b\f36\fs20\insrsid15535408 \r
+\par }{\f36\fs20\insrsid15535408 Para estos procesos se deber\'e1 utilizar un usuario perteneciente al grupo }{\b\f36\fs20\insrsid15535408 cn=Administradores,ou=Grupos_Gestion,o=Miklolife}{\f36\fs20\insrsid15535408 .}{\r
+\f36\fs20\insrsid15535408\charrsid15535408 \r
+\par }{\b\f36\fs20\insrsid7537636 \r
+\par Alta\r
+\par \r
+\par }{\f36\fs20\insrsid7537636 Para dar de alta un usuario, se ingresar\'e1 el username del mismo, y con \'e9ste se har\'e1 una b\'fasqueda en todo el \'e1rbol, a partir de }{\b\f36\fs20\insrsid7537636 o=Miklolife}{\f36\fs20\insrsid7537636 . Si el usuario n\r
+o existe, se informa del hecho y se deniega el alta del mismo (un usuario debe pertenecer a la corporaci\'f3n).\r
+\par \r
+\par En caso de existir el usuario, simplemente se lo agrega (controlando que no estuviera previamente inclu\'eddo) al grupo }{\b\f36\fs20\insrsid7537636 cn=autenticados,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid7537636 .\r
+\par \r
+\par El siguiente paso es asignarlo a los perfiles correspondientes, con lo cual el paso siguiente es traer todos los grupos (menos }{\b\f36\fs20\insrsid7537636 cn=autenticados)}{\f36\fs20\insrsid7537636 debajo del contenedor }{\b\f36\fs20\insrsid7537636 \r
+ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid7537636 . Se mostrar\'e1 una lista de los mismos (solamente el valor del atributo CN). El usuario administrador podr\'e1 asignarlo a m\'fa\r
+ltiples perfiles, desde un combo multiseleccionable desplegable. Finalmente, se asignar\'e1 el usuario a cada uno de los grupos elegidos v\'eda LDAP. Un usuario puede ser ingresado sin membres\'edas previas, simplemente no se le presentar\'e1\r
+ ninguna actividad al loguearse a la aplicaci\'f3n.}{\f36\fs20\insrsid676765 Luego podr\'e1n agregarse membres\'edas en la instancia de modificaci\'f3n.}{\f36\fs20\insrsid7537636 \r
+\par Para los usuarios internos a la corporaci\'f3n, no se permitir\'e1n modificar datos inherentes al mismo dentro de esta aplicaci\'f3\r
+n, debe realizarse desde alguna de las herramientas administradoras del dominio. En esta instancia para estos usuarios, se permitir\'e1 cambiar las membres\'edas a los grupos que har\'e1n el perfil del usuario. Para ello se presentar\'e1\r
+ un combo como en el proceso de alta,}{\f36\fs20\insrsid15535408 con los grupos actuales a los que el usuario est\'e1 inculado preseleccionados. Se elegir\'e1n los que se desee para el usuario en cuesti\'f3n, y se guardar\'e1n sus membres\'edas v\'ed\r
+\par La baja de un usuario simplemente consiste en desvincularlo de todos los grupos dentro del contenedor }{\b\f36\fs20\insrsid15535408 ou=Grupos_Gestion,o=Miklolife}{\f36\fs20\insrsid15535408 . En realidad basta con sacarlo del grupo }{\r
+\b\f36\fs20\insrsid15535408 cn=autenticados}{\f36\fs20\insrsid15535408 pero se le sacar\'e1 la membres\'eda a todos los grupos de modo de no dejar basura.\r
+\par \r
+\par }{\b\f36\fs20\insrsid15535408 7.4 \endash ABM de usuarios externos\r
+\par }{\f36\fs20\insrsid15535408 \r
+\par Para estos procesos se necesitar\'e1 un usuario que sea miembro del grupo }{\b\f36\fs20\insrsid15535408 cn=Administradores,ou=Grupos_Gestion,o=Miklolife}{\f36\fs20\insrsid15535408 .}{\f36\fs20\insrsid2170166 Todos los usuarios tratados estar\'e1n \'fa\r
+nicamente en el contenedor }{\b\f36\fs20\insrsid2170166 ou=Extranet,o=Miklolife}{\f36\fs20\insrsid2170166 .}{\f36\fs20\insrsid15535408\charrsid2170166 \r
+\par El alta de usuarios externos es similar a la de los internos pero se le permitir\'e1 adem\'e1s llenar los campos }{\f36\fs20\insrsid15291556 Username (uid y cn) ,}{\f36\fs20\insrsid4073242 Apellido}{\f36\fs20\insrsid15291556 (sn)}{\r
+\f36\fs20\insrsid4073242 , Primer Nombre}{\f36\fs20\insrsid15291556 (givenName)}{\f36\fs20\insrsid4073242 , Nombre Completo}{\f36\fs20\insrsid15291556 (fullName)}{\f36\fs20\insrsid4073242 , Tel\'e9fono}{\f36\fs20\insrsid15291556 (homePhone)}{\r
+\f36\fs20\insrsid4073242 , Direcci\'f3n}{\f36\fs20\insrsid15291556 (homePostalAddress)}{\f36\fs20\insrsid4073242 , mail}{\f36\fs20\insrsid15291556 (mail)}{\f36\fs20\insrsid4073242 y password}{\f36\fs20\insrsid15291556 (userPassword)}{\r
+\f36\fs20\insrsid4073242 , con retipeo de este \'faltimo, y ocultando los caracteres presentando asteriscos en la pantalla}{\f36\fs20\insrsid15291556 }{\f36\fs20\insrsid14554011 (entre par\'e9ntesis se muestran los atributos que se guardar\'e1\r
+n a nivel LDAP)}{\f36\fs20\insrsid4073242 . S\'f3lo el campo Apellido ser\'e1 oblig}{\f36\fs20\insrsid1785549 atorio, ya que con \'e9l se guarda el campo }{\b\f36\fs20\insrsid1785549 sn}{\f36\fs20\insrsid1785549 del objeto usuario y en la clas\r
+e estructural }{\b\f36\fs20\insrsid1785549 inetOrgPerson}{\f36\fs20\insrsid1785549 este atributo es mandatario.}{\f36\fs20\insrsid3686347 Se deber\'e1n parsear los campos ingresados para evitar errores o intentos malintencionados de guardar informaci}{\r
+\f36\fs20\insrsid4809301 \'f3n (igualmente cada atributo del directorio tiene su propia sintaxis y no admitir\'e1 valores que se alejen de la misma).}{\f36\fs20\insrsid15291556 En cuanto a los passwords, el directorio propio controlar\'e1 seg\'fa\r
+n las pol\'edticas establecidas. }{\f36\fs20\insrsid12126871 \r
+\par Adicionalmente se presentar\'e1 un grupo de radio buttons con las leyendas }{\b\f36\fs20\insrsid12126871 Prestador}{\f36\fs20\insrsid12126871 y }{\b\f36\fs20\insrsid12126871 Afiliado}{\f36\fs20\insrsid12126871 , cada uno con un radio asociado.\r
+\par \r
+\par Antes de guardar el nuevo objeto usuario, se mostrar\'e1 una pantalla preview con los datos ingresados (menos el password) y se pedir\'e1 confirmaci\'f3n o modificaci\'f3n de los datos, volviendo al paso anterior.}{\f36\fs20\insrsid157895 \r
+ Los campos en caso de modificaci\'f3n deber\'e1n ser prellenados con los valores entrados en el paso anterior.}{\f36\fs20\insrsid12126871\charrsid12126871 \r
+\par }{\f36\fs20\insrsid12126871 \r
+\par }{\f36\fs20\insrsid15291556 Una vez con todos los datos del usuario, se procede}{\f36\fs20\insrsid14554011 a crear un objeto usuario, impersonific\'e1ndose en el usuario }{\b\f36\fs20\insrsid14554011\charrsid14554011 cn=admin_gestion}{\r
+\b\f36\fs20\insrsid14554011 ,ou=Sede_Central,o=Miklolife}{\f36\fs20\insrsid14554011 . El usuario se crear\'e1 en el contenedor }{\b\f36\fs20\insrsid14554011 ou=Externos,o=Miklolife}{\f36\fs20\insrsid14554011 , y se asignar\'e1 al grupo }{\r
+\b\f36\fs20\insrsid14554011 cn=Prestadores,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid12126871 , o a }{\b\f36\fs20\insrsid12126871 cn=Afiliados,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid12126871 seg\'fa\r
+n se corresponda a un usuario de las prestadoras o a un afiliado de la Obra Social.}{\f36\fs20\insrsid157895 Adicionalmente se deber\'e1 agregar a }{\b\f36\fs20\insrsid157895 cn=autenticados,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid157895 \r
+, que como es de saber, corresponde a los usuarios de esta aplicaci\'f3n.}{\f36\fs20\insrsid4073242\charrsid157895 \r
+\par }{\f36\fs20\insrsid4073242 \r
+\par }{\f36\fs20\insrsid12126871 Si la respuesta es 0 \endash Success se dara por finalizada la alta. Si la respuesta es distinta, como un 68 - entry already exists, 65 \endash object class violation, etc, se deber\'e1\r
+ volver al paso anterior y modificar los datos. No puede haber usuarios con el mismo username dentro de un mismo contenedor.\r
+\par En esta etapa, se selecciona un usuario ya existente, y se permitir\'e1 modificar todos los campos (menos el password) del usuario. Este esquema es exactamente id\'e9ntico al alta, con la salvedad de que los campos ser\'e1\r
+n prellenados. El cambio de password ser\'e1 tratado aparte.\r
+\par }{\f36\fs20\insrsid8411340 \r
+\par En el caso de estos usuarios, por ser externos, la modificaci\'f3n no contemplar\'e1 cambios en las membres\'edas ya que las funcionalidades ser\'e1n las del grupo al que pertenecen.\r
+\par \r
+\par Como en el alta, antes de guardar las modificaciones se presentar\'e1 una pantalla a modo de preview con los datos ingresados, y un bot\'f3n para confirmar junto a otro para volver atr\'e1s.\r
+\par \r
+\par Luego, se procede a hacer un ldap modify y como siempre, chequear que la respuesta del server sea exitosa, o en caso contrario volver a la pantalla inicial.\r
+\par }{\f36\fs20\insrsid157895 \r
+\par }{\b\f36\fs20\insrsid157895 Baja\r
+\par }{\f36\fs20\insrsid157895 \r
+\par Simplemente se los saca del grupo}{\f36\fs20\insrsid7608511 }{\b\f36\fs20\insrsid7608511 cn=autenticados,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid7608511 \r
+, y del grupo correspondiente si bien es un usuario de un prestador o un usuario afiliado de la Obra Social.}{\f36\fs20\insrsid157895 \r
+\par }{\f36\fs20\insrsid7608511 \r
+\par }{\b\f36\fs20\insrsid7608511 7.5 \endash Cambios de Password\r
+\par No se les permitir\'e1 el cambio de password. Todos los usuarios que no pertenezcan a los grupos }{\b\f36\fs20\insrsid7608511 cn=Prestadores,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid14579043 o }{\b\f36\fs20\insrsid14579043 \r
+cn=Afiliados,ou=Grupo_Gestion,o=Miklolife }{\f36\fs20\insrsid14579043 deber\'e1n modificar sus password por medio de la terminal utilizando las t\'e9cnicas conocidas de windows (ctrl+alt+del y luego Change Password). Esto cambiar\'e1\r
+ el password del dominio, modificando tambi\'e9n los passords LanManager / NT, con lo cual el usuario tendr\'e1 su nueva credencial para loguearse a todas las aplicaciones que utilicen }{\f36\fs20\insrsid4329851 al directorio co\r
+mo repositorio central de identidades.}{\f36\fs20\insrsid7608511 \r
+\par A los usuarios prestadores y afiliados se les permitir\'e1 cambiar su password en un m\'f3dulo aparte. Todos los usuarios pertenecientes a estos grupos deben tener una funcionalidad de cambio de password y lo podr\'e1\r
+n hacer por las suyas. El mismo es cambiado a nivel LDAP y el atributo modificado es }{\b\f36\fs20\insrsid4329851\charrsid4329851 userPassword}{\f36\fs20\insrsid4329851 . El directorio tendr\'e1 una pol\'ed\r
+tica establecida de modo que no se pueda volver a poner el password anterior como vigente.\r
+\par }{\f36\fs20\insrsid8997858 \r
+\par En este m\'f3dulo simplemente se }{\f36\fs20\insrsid14175819 mostraran dos cajas de texto, y el usuario deber\'e1\r
+ rellenarlas con lo nuevos passwords, por duplicado para corroborar que no haya habido errores de tipeo. Paso seguido se impersonifica en el usuario propio, y se modifica su password v\'eda LDAP, controlando que el server LDAP retorne siempre un 0 \r
+\endash Success y de lo contrario volver al paso anterior.}{\f36\fs20\insrsid8997858 \r
+\par }{\f36\fs20\insrsid9381896 \r
+\par }{\b\f36\fs20\insrsid9381896 7.6 \endash Salida de la aplicaci\'f3n}{\f36\fs20\insrsid9381896 \r
+\par \r
+\par Este evento no tiene ninguna actividad a nivel de directorio. Simplemente la aplicaci\'f3n vuelve a la pantalla de login pidiendo nuevas credenciales para tener acceso a la aplicaci\'f3n.}{\f36\fs20\insrsid9902767 D\r
+e esta manera, el usuario no tiene acceso a ning\'fan m\'f3dulo si no se loguea a la aplicaci\'f3n (se vuelve al punto }{\b\f36\fs20\insrsid9902767 7.}{\b\f36\fs20\insrsid13256117 2}{\f36\fs20\insrsid9902767 ).}{\f36\fs20\insrsid9381896\charrsid9902767 \r
+\r
+\par }{\f36\fs20\insrsid12208366 \r
+\par }{\b\f36\fs20\insrsid12208366 7.7 \endash Ver usuarios}{\f36\fs20\insrsid12208366 \r
+\par \r
+\par En este m\'f3dulo, se presentar\'e1 una lista seleccionable simple con todos los usuarios debajo de }{\b\f36\fs20\insrsid12208366 o=Miklolife}{\f36\fs20\insrsid12208366 que pertenezcan al grupo }{\b\f36\fs20\insrsid12208366 \r
+cn=autenticados,ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid12208366 .}{\f36\fs20\insrsid9130035 Una vez elegido el usuario, se }{\f36\fs20\insrsid5843278 mostrar\'e1n todos los atributos relevantes del mismo (s\'f3\r
+lo los que tiene cargados en el entry del directorio), y las membres\'edas a las cuales pertenece (en el caso de externos, se mostrar\'e1 si es prestador o afiliado).}{\f36\fs20\insrsid12208366 \r
+\par }{\f36\fs20\insrsid16259534 \r
+\par }{\b\f36\fs20\insrsid16259534 7.8 \endash ABM de perfiles\r
+\par \r
+\par }{\f36\fs20\insrsid16259534 En este apartado, se trata el agregado de nuevos perfiles a la aplicaci\'f3n. En este caso se debe acceder a la base relacional adem\'e1s del directorio jer\'e1rquico.}{\f36\fs20\insrsid2643954 \r
+ Para estas operaciones la aplicaci\'f3n se debe impersonificar en el usuario }{\b\f36\fs20\insrsid2643954 cn=admin_gestion,ou=Sede_Central,o=Miklolife}{\f36\fs20\insrsid2643954 .}{\f36\fs20\insrsid16259534\charrsid2643954 \r
+\par }{\f36\fs20\insrsid16259534 \r
+\par }{\b\f36\fs20\insrsid16259534 Alta\r
+\par }{\f36\fs20\insrsid16259534 \r
+\par En el alta, se pedir\'e1 el nombre del nuevo perfil y se mostrar\'e1 una lista de las funcionalidades existentes. El usuario administrador deber\'e1 seleccionar del combo m\'faltiple aquellas }{\f36\fs20\insrsid4130750 \r
+funcionalidades que desea tenga el nuevo perfil. Previo a una pantalla de previsualizaci\'f3n, se proceder\'e1 a los siguientes dos pasos:}{\f36\fs20\insrsid16259534 \r
+Crear un nuevo grupo, dentro del contenedor }{\b\f36\fs20\insrsid4130750 ou=Grupo_Gestion,o=Miklolife}{\f36\fs20\insrsid4130750 con }{\b\f36\fs20\insrsid4130750 cn=XXXX}{\f36\fs20\insrsid4130750 donde }{\b\f36\fs20\insrsid4130750 XXXX}{\r
+\f36\fs20\insrsid4130750 es el nombre del nuevo perfil.\r
+\par {\listtext\pard\plain\f36\fs20\insrsid4130750 \hich\af36\dbch\af0\loch\f36 2.\tab}En la tabla Perfil_Funcionalidad, se agrega por cada funcionalidad elegida, un nuevo par }{\b\f36\fs20\insrsid4130750 nombre_grupo / fid_funcionalidad}{\r
+\par Se presentar\'e1 una pantalla similar al alta pero con aquellas funcionalidades elegidas preseleccionadas. El usuario deber\'e1 elegir las funcionalidades que quedar\'e1n para ese perfil, y acto seguido }{\f36\fs20\insrsid7353473 se proceder\'e1\r
+ a modificar la tabla }{\b\f36\fs20\insrsid7353473 Perfil_Funcionalidad}{\f36\fs20\insrsid7353473 modificando, eliminando y agregando registros de pares }{\b\f36\fs20\insrsid7353473 nombre_grupo / fid_funcionalidad}{\f36\fs20\insrsid7353473 seg\'fa\r
+n se hayan seleccionado en el caso anterior.}{\f36\fs20\insrsid6364580 \r
+\par }{\f36\fs20\insrsid7353473 \r
+\par }{\b\f36\fs20\insrsid7353473 Baja\r
+\par }{\f36\fs20\insrsid7353473 \r
+\par Se presentar\'e1n una lista de perfiles (exceptuando los perfiles por default que se describieron secciones atr\'e1s). El usuario seleccionar\'e1 un perfil y se le advertir\'e1 que se est\'e1 por eliminar el mismo. Una vez realizado esto, }{\r
+\f36\fs20\insrsid286523 y confirmado por el usuario, se proceder\'e1 a hacer un ldap delete del grupo elegido, y se elmininar\'e1 de la tabla }{\b\f36\fs20\insrsid286523 Perfil_Funcionalidad}{\f36\fs20\insrsid286523 todos los registros donde }{\r
+\b\f36\fs20\insrsid286523 nombre_grupo}{\f36\fs20\insrsid286523 sea igual al }{\b\f36\fs20\insrsid286523 cn}{\f36\fs20\insrsid286523 del grupo que se ha eliminado.}{\f36\fs20\insrsid7353473\charrsid286523 \r